Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixed BindingManager to make sure it doesn't use invalid context #17393

Conversation

kkasperczyk-no
Copy link
Contributor

Problem

BindingManager uses application context passed to
NotifyBoundClusterChanged and doesn't care about its life time.
Applications delete the context after calling the method, so if
the context will be used asynchronously (like for HandleDeviceConnect)
it may have invalid value.

Change overview

  • Added for BindingManager method that allows to register handler
    called when context is not used anymore and can be released.
  • Added releasing context in applications using context release
    handler.

Testing

Tested manually with nrfconnect light switch app and chiptool.

context and release it in the proper moment.
@kkasperczyk-no kkasperczyk-no force-pushed the binding_manager_context_delete branch from 5b38220 to 3c1541f Compare April 20, 2022 13:00
@github-actions
Copy link

github-actions bot commented Apr 20, 2022

PR #17393: Size comparison from 66333a9 to 3c1541f

Increases (10 builds for cc13x2_26x2, esp32, linux, nrfconnect, p6, telink)
platform target config section 66333a9 3c1541f change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 684595 684739 144 0.0
.bss 75888 75896 8 0.0
.text 580792 580936 144 0.0
esp32 all-clusters-app c3devkit (read only) 980922 981130 208 0.0
(read/write) 1397714 1397730 16 0.0
.dram0.bss 62352 62360 8 0.0
.flash.text 980922 981130 208 0.0
m5stack (read only) 1036355 1036527 172 0.0
(read/write) 465456 465464 8 0.0
.dram0.bss 67872 67880 8 0.0
.flash.text 1030971 1031143 172 0.0
linux all-clusters-app debug (read only) 2706137 2706793 656 0.0
.text 2297922 2298578 656 0.0
shell debug (read only) 2533065 2533657 592 0.0
.text 2155666 2156258 592 0.0
thermostat-no-ble arm64 (read only) 2358260 2358708 448 0.0
.text 1983968 1984416 448 0.0
tv-app debug (read only) 2833705 2834297 592 0.0
.text 2435922 2436514 592 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1164331 1164475 144 0.0
bss 136240 136248 8 0.0
text 801948 802092 144 0.0
p6 all-clusters-app default (read/write) 2517448 2517688 240 0.0
.bss 118344 118352 8 0.0
.text 1475712 1475952 240 0.0
telink lighting-app tlsr9518adk80d (read/write) 800756 800940 184 0.0
bss 69672 69680 8 0.0
text 569896 570076 180 0.0
Decreases (1 build for cc13x2_26x2)
platform target config section 66333a9 3c1541f change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 168308 168172 -136 -0.1
Full report (40 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 66333a9 3c1541f change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 684595 684739 144 0.0
(read/write) 168308 168172 -136 -0.1
.bss 75888 75896 8 0.0
.data 3380 3380 0 0.0
.rodata 103323 103323 0 0.0
.text 580792 580936 144 0.0
lock-ftd LP_CC2652R7 (read only) 676947 676947 0 0.0
(read/write) 166924 166924 0 0.0
.bss 73912 73912 0 0.0
.data 3212 3212 0 0.0
.rodata 99027 99027 0 0.0
.text 577436 577436 0 0.0
lock-mtd LP_CC2652R7 (read only) 625691 625691 0 0.0
(read/write) 146700 146700 0 0.0
.bss 69632 69632 0 0.0
.data 3212 3212 0 0.0
.rodata 98907 98907 0 0.0
.text 526292 526292 0 0.0
pump-app LP_CC2652R7 (read only) 648715 648715 0 0.0
(read/write) 152212 152212 0 0.0
.bss 74344 74344 0 0.0
.data 3244 3244 0 0.0
.rodata 75491 75491 0 0.0
.text 572736 572736 0 0.0
pump-controller-app LP_CC2652R7 (read only) 642019 642019 0 0.0
(read/write) 151880 151880 0 0.0
.bss 74048 74048 0 0.0
.data 3208 3208 0 0.0
.rodata 78771 78771 0 0.0
.text 562760 562760 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 617842 617842 0 0.0
.app_xip_area 524880 524880 0 0.0
.bss 75628 75628 0 0.0
.data 684 684 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 612534 612534 0 0.0
.app_xip_area 521052 521052 0 0.0
.bss 74180 74180 0 0.0
.data 648 648 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 565322 565322 0 0.0
.app_xip_area 464252 464252 0 0.0
.bss 83472 83472 0 0.0
.data 564 564 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 905540 905540 0 0.0
(read/write) 128628 128628 0 0.0
.bss 126592 126592 0 0.0
.data 2036 2036 0 0.0
.text 905532 905532 0 0.0
BRD4161A+rpc (read only) 939900 939900 0 0.0
(read/write) 145312 145312 0 0.0
.bss 143072 143072 0 0.0
.data 2240 2240 0 0.0
.text 939892 939892 0 0.0
window-app BRD4161A (read only) 842996 842996 0 0.0
(read/write) 126712 126712 0 0.0
.bss 124768 124768 0 0.0
.data 1944 1944 0 0.0
.text 842988 842988 0 0.0
esp32 all-clusters-app c3devkit (read only) 980922 981130 208 0.0
(read/write) 1397714 1397730 16 0.0
.dram0.bss 62352 62360 8 0.0
.dram0.data 14412 14412 0 0.0
.flash.rodata 202040 202040 0 0.0
.flash.text 980922 981130 208 0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1036355 1036527 172 0.0
(read/write) 465456 465464 8 0.0
.dram0.bss 67872 67880 8 0.0
.dram0.data 34152 34152 0 0.0
.flash.rodata 231596 231596 0 0.0
.flash.text 1030971 1031143 172 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 683720 683720 0 0.0
.bss 77632 77632 0 0.0
.data 1992 1992 0 0.0
.text 598296 598296 0 0.0
lock k32w061+release (read/write) 724704 724704 0 0.0
.bss 78264 78264 0 0.0
.data 1952 1952 0 0.0
.text 638688 638688 0 0.0
linux all-clusters-app debug (read only) 2706137 2706793 656 0.0
(read/write) 149536 149536 0 0.0
.bss 59872 59872 0 0.0
.data 1920 1920 0 0.0
.data.rel.ro 81672 81672 0 0.0
.dynamic 608 608 0 0.0
.got 4448 4448 0 0.0
.init 27 27 0 0.0
.init_array 984 984 0 0.0
.rodata 233349 233349 0 0.0
.text 2297922 2298578 656 0.0
bridge-app debug+rpc (read only) 1839053 1839053 0 0.0
(read/write) 91856 91856 0 0.0
.bss 44136 44136 0 0.0
.data 2912 2912 0 0.0
.data.rel.ro 39744 39744 0 0.0
.dynamic 592 592 0 0.0
.got 3920 3920 0 0.0
.init 27 27 0 0.0
.init_array 544 544 0 0.0
.rodata 149089 149089 0 0.0
.text 1570821 1570821 0 0.0
chip-tool debug (read only) 10878005 10878005 0 0.0
(read/write) 374192 374192 0 0.0
.bss 22592 22592 0 0.0
.data 1136 1136 0 0.0
.data.rel.ro 344232 344232 0 0.0
.dynamic 624 624 0 0.0
.got 4936 4936 0 0.0
.init 27 27 0 0.0
.init_array 648 648 0 0.0
.rodata 545933 545933 0 0.0
.text 9496357 9496357 0 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10495100 10495100 0 0.0
(read/write) 495713 495713 0 0.0
.bss 40865 40865 0 0.0
.data 1184 1184 0 0.0
.data.rel.ro 391400 391400 0 0.0
.dynamic 560 560 0 0.0
.got 58464 58464 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 519596 519596 0 0.0
.text 8862644 8862644 0 0.0
lighting-app debug+rpc (read only) 2316233 2316233 0 0.0
(read/write) 127952 127952 0 0.0
.bss 49920 49920 0 0.0
.data 1952 1952 0 0.0
.data.rel.ro 70360 70360 0 0.0
.dynamic 608 608 0 0.0
.got 4304 4304 0 0.0
.init 27 27 0 0.0
.init_array 776 776 0 0.0
.rodata 183249 183249 0 0.0
.text 1966322 1966322 0 0.0
lock-app debug (read only) 2139897 2139897 0 0.0
(read/write) 120216 120216 0 0.0
.bss 47744 47744 0 0.0
.data 1472 1472 0 0.0
.data.rel.ro 65416 65416 0 0.0
.dynamic 592 592 0 0.0
.got 4248 4248 0 0.0
.init 27 27 0 0.0
.init_array 720 720 0 0.0
.rodata 189633 189633 0 0.0
.text 1793298 1793298 0 0.0
ota-provider-app debug (read only) 2049145 2049145 0 0.0
(read/write) 115584 115584 0 0.0
.bss 47936 47936 0 0.0
.data 1640 1640 0 0.0
.data.rel.ro 60264 60264 0 0.0
.dynamic 608 608 0 0.0
.got 4448 4448 0 0.0
.init 27 27 0 0.0
.init_array 632 632 0 0.0
.rodata 173595 173595 0 0.0
.text 1718338 1718338 0 0.0
ota-requestor-app debug (read only) 2080025 2080025 0 0.0
(read/write) 118392 118392 0 0.0
.bss 48608 48608 0 0.0
.data 1896 1896 0 0.0
.data.rel.ro 62296 62296 0 0.0
.dynamic 592 592 0 0.0
.got 4288 4288 0 0.0
.init 27 27 0 0.0
.init_array 656 656 0 0.0
.rodata 169980 169980 0 0.0
.text 1751346 1751346 0 0.0
shell debug (read only) 2533065 2533657 592 0.0
(read/write) 150280 150280 0 0.0
.bss 67272 67272 0 0.0
.data 1296 1296 0 0.0
.data.rel.ro 76000 76000 0 0.0
.dynamic 592 592 0 0.0
.got 4168 4168 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 215442 215442 0 0.0
.text 2155666 2156258 592 0.0
thermostat-no-ble arm64 (read only) 2358260 2358708 448 0.0
(read/write) 151073 151073 0 0.0
.bss 62849 62849 0 0.0
.data 1440 1440 0 0.0
.data.rel.ro 79040 79040 0 0.0
.dynamic 560 560 0 0.0
.got 4728 4728 0 0.0
.init 24 24 0 0.0
.init_array 368 368 0 0.0
.rodata 145156 145156 0 0.0
.text 1983968 1984416 448 0.0
tv-app debug (read only) 2833705 2834297 592 0.0
(read/write) 253104 253104 0 0.0
.bss 165880 165880 0 0.0
.data 4448 4448 0 0.0
.data.rel.ro 76568 76568 0 0.0
.dynamic 592 592 0 0.0
.got 4680 4680 0 0.0
.init 27 27 0 0.0
.init_array 912 912 0 0.0
.rodata 215371 215371 0 0.0
.text 2435922 2436514 592 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2409748 2409748 0 0.0
.bss 184972 184972 0 0.0
.data 5840 5840 0 0.0
.text 1372348 1372348 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1164331 1164475 144 0.0
bss 136240 136248 8 0.0
rodata 147484 147484 0 0.0
text 801948 802092 144 0.0
lighting-app nrf52840dk_nrf52840 (read/write) 1149035 1149035 0 0.0
bss 139964 139964 0 0.0
rodata 122196 122196 0 0.0
text 808256 808256 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 1113331 1113331 0 0.0
bss 140200 140200 0 0.0
rodata 113300 113300 0 0.0
text 780736 780736 0 0.0
nrf52840dongle_nrf52840 (read/write) 1057099 1057099 0 0.0
bss 147156 147156 0 0.0
rodata 92260 92260 0 0.0
text 736840 736840 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 1051458 1051458 0 0.0
bss 136164 136164 0 0.0
rodata 114952 114952 0 0.0
text 718368 718368 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 1086775 1086775 0 0.0
bss 129964 129964 0 0.0
rodata 134128 134128 0 0.0
text 744216 744216 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 989478 989478 0 0.0
bss 126196 126196 0 0.0
rodata 126932 126932 0 0.0
text 654468 654468 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 1069087 1069087 0 0.0
bss 129916 129916 0 0.0
rodata 117624 117624 0 0.0
text 743004 743004 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 1050839 1050839 0 0.0
bss 129636 129636 0 0.0
rodata 113632 113632 0 0.0
text 729028 729028 0 0.0
p6 all-clusters-app default (read/write) 2517448 2517688 240 0.0
.bss 118344 118352 8 0.0
.data 2768 2768 0 0.0
.text 1475712 1475952 240 0.0
light-app default (read/write) 2416120 2416120 0 0.0
.bss 111824 111824 0 0.0
.data 2576 2576 0 0.0
.text 1374384 1374384 0 0.0
lock-app default (read/write) 2420024 2420024 0 0.0
.bss 111624 111624 0 0.0
.data 2536 2536 0 0.0
.text 1378288 1378288 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 800756 800940 184 0.0
bss 69672 69680 8 0.0
noinit 40416 40416 0 0.0
text 569896 570076 180 0.0

src/app/clusters/bindings/BindingManager.cpp Outdated Show resolved Hide resolved
src/app/clusters/bindings/BindingManager.cpp Outdated Show resolved Hide resolved
src/app/clusters/bindings/BindingManager.cpp Outdated Show resolved Hide resolved
src/app/clusters/bindings/BindingManager.cpp Outdated Show resolved Hide resolved
src/app/clusters/bindings/BindingManager.cpp Outdated Show resolved Hide resolved
src/app/clusters/bindings/BindingManager.h Outdated Show resolved Hide resolved
@kkasperczyk-no kkasperczyk-no force-pushed the binding_manager_context_delete branch from 1b95d40 to 146cc57 Compare April 26, 2022 11:58
@github-actions
Copy link

github-actions bot commented Apr 26, 2022

PR #17393: Size comparison from 7148111 to 93cbff9

Increases (2 builds for linux, telink)
platform target config section 7148111 93cbff9 change % change
linux thermostat-no-ble arm64 (read only) 2368284 2368780 496 0.0
(read/write) 174369 174385 16 0.0
.bss 86097 86113 16 0.0
.rodata 145500 145628 128 0.1
.text 1993680 1994048 368 0.0
telink lighting-app tlsr9518adk80d (read/write) 808020 808140 120 0.0
bss 75216 75224 8 0.0
text 571792 571904 112 0.0
Full report (9 builds for cyw30739, k32w, linux, mbed, telink)
platform target config section 7148111 93cbff9 change % change
cyw30739 light cyw930739m2evb_01 (read/write) 626910 626910 0 0.0
.app_xip_area 529788 529788 0 0.0
.bss 79780 79780 0 0.0
.data 692 692 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 621446 621446 0 0.0
.app_xip_area 525796 525796 0 0.0
.bss 78340 78340 0 0.0
.data 656 656 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574234 574234 0 0.0
.app_xip_area 468940 468940 0 0.0
.bss 87688 87688 0 0.0
.data 568 568 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
k32w light k32w061+release (read/write) 688820 688820 0 0.0
.bss 81112 81112 0 0.0
.data 2000 2000 0 0.0
.text 599908 599908 0 0.0
lock k32w061+release (read/write) 729712 729712 0 0.0
.bss 81520 81520 0 0.0
.data 1960 1960 0 0.0
.text 640432 640432 0 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 10556732 10556732 0 0.0
(read/write) 497697 497697 0 0.0
.bss 40897 40897 0 0.0
.data 1192 1192 0 0.0
.data.rel.ro 393104 393104 0 0.0
.dynamic 560 560 0 0.0
.got 58680 58680 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 521228 521228 0 0.0
.text 8917652 8917652 0 0.0
thermostat-no-ble arm64 (read only) 2368284 2368780 496 0.0
(read/write) 174369 174385 16 0.0
.bss 86097 86113 16 0.0
.data 1488 1488 0 0.0
.data.rel.ro 79008 79008 0 0.0
.dynamic 560 560 0 0.0
.got 4744 4744 0 0.0
.init 24 24 0 0.0
.init_array 368 368 0 0.0
.rodata 145500 145628 128 0.1
.text 1993680 1994048 368 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2411676 2411676 0 0.0
.bss 205660 205660 0 0.0
.data 5848 5848 0 0.0
.text 1374276 1374276 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 808020 808140 120 0.0
bss 75216 75224 8 0.0
noinit 40416 40416 0 0.0
text 571792 571904 112 0.0

@kkasperczyk-no kkasperczyk-no force-pushed the binding_manager_context_delete branch from 93cbff9 to b6deb4d Compare April 26, 2022 12:38
@github-actions
Copy link

github-actions bot commented Apr 26, 2022

PR #17393: Size comparison from 7148111 to b6deb4d

Increases (10 builds for cc13x2_26x2, esp32, linux, nrfconnect, p6, telink)
platform target config section 7148111 b6deb4d change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 688363 688459 96 0.0
.bss 75020 75028 8 0.0
.text 586256 586352 96 0.0
esp32 all-clusters-app c3devkit (read only) 999482 999626 144 0.0
(read/write) 1473666 1473682 16 0.0
.dram0.bss 68176 68184 8 0.0
.flash.text 999482 999626 144 0.0
m5stack (read only) 1053791 1053887 96 0.0
(read/write) 475656 475664 8 0.0
.dram0.bss 73696 73704 8 0.0
.flash.text 1048407 1048503 96 0.0
linux all-clusters-app debug (read only) 2735377 2736273 896 0.0
.rodata 233861 234213 352 0.2
.text 2326674 2327218 544 0.0
shell debug (read only) 2561209 2561929 720 0.0
.rodata 215602 215890 288 0.1
.text 2183698 2184130 432 0.0
thermostat-no-ble arm64 (read only) 2368284 2368860 576 0.0
(read/write) 174369 174385 16 0.0
.bss 86097 86113 16 0.0
.rodata 145500 145628 128 0.1
.text 1993680 1994128 448 0.0
tv-app debug (read only) 2845017 2845769 752 0.0
.rodata 216011 216331 320 0.1
.text 2446546 2446978 432 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1177475 1177571 96 0.0
bss 141784 141792 8 0.0
text 806956 807052 96 0.0
p6 all-clusters-app default (read/write) 2527096 2527240 144 0.0
.bss 139040 139048 8 0.0
.text 1485360 1485504 144 0.0
telink lighting-app tlsr9518adk80d (read/write) 808020 808148 128 0.0
bss 75216 75224 8 0.0
text 571792 571910 118 0.0
Decreases (1 build for cc13x2_26x2)
platform target config section 7148111 b6deb4d change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 163676 163588 -88 -0.1
Full report (40 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 7148111 b6deb4d change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 688363 688459 96 0.0
(read/write) 163676 163588 -88 -0.1
.bss 75020 75028 8 0.0
.data 3396 3396 0 0.0
.rodata 101627 101627 0 0.0
.text 586256 586352 96 0.0
lock-ftd LP_CC2652R7 (read only) 688923 688923 0 0.0
(read/write) 154428 154428 0 0.0
.bss 73388 73388 0 0.0
.data 3220 3220 0 0.0
.rodata 103219 103219 0 0.0
.text 585220 585220 0 0.0
lock-mtd LP_CC2652R7 (read only) 637675 637675 0 0.0
(read/write) 146188 146188 0 0.0
.bss 69108 69108 0 0.0
.data 3220 3220 0 0.0
.rodata 103099 103099 0 0.0
.text 534084 534084 0 0.0
pump-app LP_CC2652R7 (read only) 661767 661767 0 0.0
(read/write) 182784 182784 0 0.0
.bss 73564 73564 0 0.0
.data 3252 3252 0 0.0
.rodata 80415 80415 0 0.0
.text 580872 580872 0 0.0
pump-controller-app LP_CC2652R7 (read only) 654663 654663 0 0.0
(read/write) 189680 189680 0 0.0
.bss 73612 73612 0 0.0
.data 3216 3216 0 0.0
.rodata 83439 83439 0 0.0
.text 570744 570744 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 626910 626910 0 0.0
.app_xip_area 529788 529788 0 0.0
.bss 79780 79780 0 0.0
.data 692 692 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 621446 621446 0 0.0
.app_xip_area 525796 525796 0 0.0
.bss 78340 78340 0 0.0
.data 656 656 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574234 574234 0 0.0
.app_xip_area 468940 468940 0 0.0
.bss 87688 87688 0 0.0
.data 568 568 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 907776 907776 0 0.0
(read/write) 134912 134912 0 0.0
.bss 132864 132864 0 0.0
.data 2044 2044 0 0.0
.text 907768 907768 0 0.0
BRD4161A+rpc (read only) 942192 942192 0 0.0
(read/write) 151592 151592 0 0.0
.bss 149344 149344 0 0.0
.data 2248 2248 0 0.0
.text 942184 942184 0 0.0
window-app BRD4161A (read only) 845160 845160 0 0.0
(read/write) 133000 133000 0 0.0
.bss 131040 131040 0 0.0
.data 1956 1956 0 0.0
.text 845152 845152 0 0.0
esp32 all-clusters-app c3devkit (read only) 999482 999626 144 0.0
(read/write) 1473666 1473682 16 0.0
.dram0.bss 68176 68184 8 0.0
.dram0.data 14428 14428 0 0.0
.flash.rodata 206616 206616 0 0.0
.flash.text 999482 999626 144 0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1053791 1053887 96 0.0
(read/write) 475656 475664 8 0.0
.dram0.bss 73696 73704 8 0.0
.dram0.data 34168 34168 0 0.0
.flash.rodata 235956 235956 0 0.0
.flash.text 1048407 1048503 96 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 688820 688820 0 0.0
.bss 81112 81112 0 0.0
.data 2000 2000 0 0.0
.text 599908 599908 0 0.0
lock k32w061+release (read/write) 729712 729712 0 0.0
.bss 81520 81520 0 0.0
.data 1960 1960 0 0.0
.text 640432 640432 0 0.0
linux all-clusters-app debug (read only) 2735377 2736273 896 0.0
(read/write) 172872 172872 0 0.0
.bss 83168 83168 0 0.0
.data 1984 1984 0 0.0
.data.rel.ro 81640 81640 0 0.0
.dynamic 608 608 0 0.0
.got 4464 4464 0 0.0
.init 27 27 0 0.0
.init_array 992 992 0 0.0
.rodata 233861 234213 352 0.2
.text 2326674 2327218 544 0.0
bridge-app debug+rpc (read only) 1891361 1891361 0 0.0
(read/write) 120304 120304 0 0.0
.bss 71168 71168 0 0.0
.data 3424 3424 0 0.0
.data.rel.ro 40392 40392 0 0.0
.dynamic 592 592 0 0.0
.got 4032 4032 0 0.0
.init 27 27 0 0.0
.init_array 680 680 0 0.0
.rodata 159633 159633 0 0.0
.text 1608946 1608946 0 0.0
chip-tool debug (read only) 10945293 10945293 0 0.0
(read/write) 375792 375792 0 0.0
.bss 22592 22592 0 0.0
.data 1136 1136 0 0.0
.data.rel.ro 345808 345808 0 0.0
.dynamic 624 624 0 0.0
.got 4952 4952 0 0.0
.init 27 27 0 0.0
.init_array 648 648 0 0.0
.rodata 547381 547381 0 0.0
.text 9557957 9557957 0 0.0
chip-tool-no-interactive-ipv6only arm64 (read only) 10556732 10556732 0 0.0
(read/write) 497697 497697 0 0.0
.bss 40897 40897 0 0.0
.data 1192 1192 0 0.0
.data.rel.ro 393104 393104 0 0.0
.dynamic 560 560 0 0.0
.got 58680 58680 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 521228 521228 0 0.0
.text 8917652 8917652 0 0.0
lighting-app debug+rpc (read only) 2326817 2326817 0 0.0
(read/write) 151256 151256 0 0.0
.bss 73216 73216 0 0.0
.data 1984 1984 0 0.0
.data.rel.ro 70328 70328 0 0.0
.dynamic 608 608 0 0.0
.got 4320 4320 0 0.0
.init 27 27 0 0.0
.init_array 784 784 0 0.0
.rodata 183729 183729 0 0.0
.text 1976450 1976450 0 0.0
lock-app debug (read only) 2207169 2207169 0 0.0
(read/write) 145640 145640 0 0.0
.bss 71808 71808 0 0.0
.data 1504 1504 0 0.0
.data.rel.ro 66664 66664 0 0.0
.dynamic 592 592 0 0.0
.got 4312 4312 0 0.0
.init 27 27 0 0.0
.init_array 736 736 0 0.0
.rodata 192193 192193 0 0.0
.text 1854978 1854978 0 0.0
ota-provider-app debug (read only) 2059889 2059889 0 0.0
(read/write) 138888 138888 0 0.0
.bss 71232 71232 0 0.0
.data 1672 1672 0 0.0
.data.rel.ro 60216 60216 0 0.0
.dynamic 608 608 0 0.0
.got 4480 4480 0 0.0
.init 27 27 0 0.0
.init_array 640 640 0 0.0
.rodata 174235 174235 0 0.0
.text 1728146 1728146 0 0.0
ota-requestor-app debug (read only) 2091137 2091137 0 0.0
(read/write) 141696 141696 0 0.0
.bss 71872 71872 0 0.0
.data 1928 1928 0 0.0
.data.rel.ro 62264 62264 0 0.0
.dynamic 592 592 0 0.0
.got 4320 4320 0 0.0
.init 27 27 0 0.0
.init_array 664 664 0 0.0
.rodata 170588 170588 0 0.0
.text 1761554 1761554 0 0.0
shell debug (read only) 2561209 2561929 720 0.0
(read/write) 196840 196840 0 0.0
.bss 113768 113768 0 0.0
.data 1360 1360 0 0.0
.data.rel.ro 75992 75992 0 0.0
.dynamic 592 592 0 0.0
.got 4184 4184 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 215602 215890 288 0.1
.text 2183698 2184130 432 0.0
thermostat-no-ble arm64 (read only) 2368284 2368860 576 0.0
(read/write) 174369 174385 16 0.0
.bss 86097 86113 16 0.0
.data 1488 1488 0 0.0
.data.rel.ro 79008 79008 0 0.0
.dynamic 560 560 0 0.0
.got 4744 4744 0 0.0
.init 24 24 0 0.0
.init_array 368 368 0 0.0
.rodata 145500 145628 128 0.1
.text 1993680 1994128 448 0.0
tv-app debug (read only) 2845017 2845769 752 0.0
(read/write) 276536 276536 0 0.0
.bss 189112 189112 0 0.0
.data 4640 4640 0 0.0
.data.rel.ro 76568 76568 0 0.0
.dynamic 592 592 0 0.0
.got 4696 4696 0 0.0
.init 27 27 0 0.0
.init_array 920 920 0 0.0
.rodata 216011 216331 320 0.1
.text 2446546 2446978 432 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2411676 2411676 0 0.0
.bss 205660 205660 0 0.0
.data 5848 5848 0 0.0
.text 1374276 1374276 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1177475 1177571 96 0.0
bss 141784 141792 8 0.0
rodata 150100 150100 0 0.0
text 806956 807052 96 0.0
lighting-app nrf52840dk_nrf52840 (read/write) 1156055 1156055 0 0.0
bss 145508 145508 0 0.0
rodata 121960 121960 0 0.0
text 809992 809992 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 1120343 1120343 0 0.0
bss 145744 145744 0 0.0
rodata 113072 113072 0 0.0
text 782476 782476 0 0.0
nrf52840dongle_nrf52840 (read/write) 1064107 1064107 0 0.0
bss 152700 152700 0 0.0
rodata 92044 92044 0 0.0
text 738564 738564 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 1058506 1058506 0 0.0
bss 141712 141712 0 0.0
rodata 114712 114712 0 0.0
text 720104 720104 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 1093647 1093647 0 0.0
bss 135424 135424 0 0.0
rodata 133752 133752 0 0.0
text 746004 746004 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 996446 996446 0 0.0
bss 131660 131660 0 0.0
rodata 126556 126556 0 0.0
text 656260 656260 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 1076447 1076447 0 0.0
bss 135512 135512 0 0.0
rodata 117472 117472 0 0.0
text 744872 744872 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 1057995 1057995 0 0.0
bss 135232 135232 0 0.0
rodata 113420 113420 0 0.0
text 730756 730756 0 0.0
p6 all-clusters-app default (read/write) 2527096 2527240 144 0.0
.bss 139040 139048 8 0.0
.data 2784 2784 0 0.0
.text 1485360 1485504 144 0.0
light-app default (read/write) 2418848 2418848 0 0.0
.bss 132520 132520 0 0.0
.data 2584 2584 0 0.0
.text 1377112 1377112 0 0.0
lock-app default (read/write) 2423040 2423040 0 0.0
.bss 132320 132320 0 0.0
.data 2544 2544 0 0.0
.text 1381304 1381304 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 808020 808148 128 0.0
bss 75216 75224 8 0.0
noinit 40416 40416 0 0.0
text 571792 571910 118 0.0

@pullapprove pullapprove bot requested review from turon and mspang and removed request for lzgrablic02 and austinh0 April 26, 2022 21:26
@kkasperczyk-no kkasperczyk-no force-pushed the binding_manager_context_delete branch from 262a9ee to 23174a8 Compare April 27, 2022 06:29
@kkasperczyk-no
Copy link
Contributor Author

@bzbarsky-apple thank you for hints and very helpful review.

@github-actions
Copy link

github-actions bot commented Apr 27, 2022

PR #17393: Size comparison from 99988e5 to 23174a8

Increases (7 builds for cc13x2_26x2, esp32, linux, nrfconnect, p6, telink)
platform target config section 99988e5 23174a8 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 688327 688423 96 0.0
.bss 75020 75028 8 0.0
.text 586264 586360 96 0.0
esp32 all-clusters-app c3devkit (read only) 999528 999664 136 0.0
(read/write) 1473690 1473706 16 0.0
.dram0.bss 68176 68184 8 0.0
.flash.text 999528 999664 136 0.0
m5stack (read only) 1053803 1053895 92 0.0
(read/write) 475688 475696 8 0.0
.dram0.bss 73696 73704 8 0.0
.flash.text 1048419 1048511 92 0.0
linux thermostat-no-ble arm64 (read only) 2368540 2369116 576 0.0
(read/write) 174337 174353 16 0.0
.bss 86097 86113 16 0.0
.rodata 145532 145660 128 0.1
.text 1993984 1994432 448 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179487 1179599 112 0.0
bss 141784 141792 8 0.0
text 808800 808904 104 0.0
p6 all-clusters-app default (read/write) 2527216 2527344 128 0.0
.bss 139040 139048 8 0.0
.text 1485480 1485608 128 0.0
telink lighting-app tlsr9518adk80d (read/write) 808144 808256 112 0.0
bss 75216 75224 8 0.0
text 571886 571996 110 0.0
Decreases (1 build for cc13x2_26x2)
platform target config section 99988e5 23174a8 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read/write) 163712 163624 -88 -0.1
Full report (31 builds for cc13x2_26x2, cyw30739, efr32, esp32, k32w, linux, mbed, nrfconnect, p6, telink)
platform target config section 99988e5 23174a8 change % change
cc13x2_26x2 all-clusters-app LP_CC2652R7 (read only) 688327 688423 96 0.0
(read/write) 163712 163624 -88 -0.1
.bss 75020 75028 8 0.0
.data 3396 3396 0 0.0
.rodata 101583 101583 0 0.0
.text 586264 586360 96 0.0
lock-ftd LP_CC2652R7 (read only) 689047 689047 0 0.0
(read/write) 154304 154304 0 0.0
.bss 73388 73388 0 0.0
.data 3220 3220 0 0.0
.rodata 103247 103247 0 0.0
.text 585316 585316 0 0.0
lock-mtd LP_CC2652R7 (read only) 637791 637791 0 0.0
(read/write) 146188 146188 0 0.0
.bss 69108 69108 0 0.0
.data 3220 3220 0 0.0
.rodata 103127 103127 0 0.0
.text 534172 534172 0 0.0
pump-app LP_CC2652R7 (read only) 661891 661891 0 0.0
(read/write) 182660 182660 0 0.0
.bss 73564 73564 0 0.0
.data 3252 3252 0 0.0
.rodata 80443 80443 0 0.0
.text 580968 580968 0 0.0
pump-controller-app LP_CC2652R7 (read only) 654787 654787 0 0.0
(read/write) 189556 189556 0 0.0
.bss 73612 73612 0 0.0
.data 3216 3216 0 0.0
.rodata 83467 83467 0 0.0
.text 570840 570840 0 0.0
cyw30739 light cyw930739m2evb_01 (read/write) 626890 626890 0 0.0
.app_xip_area 529768 529768 0 0.0
.bss 79780 79780 0 0.0
.data 692 692 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
lock cyw930739m2evb_01 (read/write) 621434 621434 0 0.0
.app_xip_area 525784 525784 0 0.0
.bss 78340 78340 0 0.0
.data 656 656 0 0.0
.rodata 0 0 0 0.0
.text 0 0 0 0.0
ota-requestor-no-progress-logging cyw930739m2evb_01 (read/write) 574262 574262 0 0.0
.app_xip_area 468968 468968 0 0.0
.bss 87688 87688 0 0.0
.data 568 568 0 0.0
.rodata 0 0 0 0.0
.text 112 112 0 0.0
efr32 lighting-app BRD4161A (read only) 907908 907908 0 0.0
(read/write) 134908 134908 0 0.0
.bss 132864 132864 0 0.0
.data 2044 2044 0 0.0
.text 907900 907900 0 0.0
BRD4161A+rpc (read only) 942308 942308 0 0.0
(read/write) 151592 151592 0 0.0
.bss 149344 149344 0 0.0
.data 2248 2248 0 0.0
.text 942300 942300 0 0.0
window-app BRD4161A (read only) 845276 845276 0 0.0
(read/write) 132996 132996 0 0.0
.bss 131040 131040 0 0.0
.data 1956 1956 0 0.0
.text 845268 845268 0 0.0
esp32 all-clusters-app c3devkit (read only) 999528 999664 136 0.0
(read/write) 1473690 1473706 16 0.0
.dram0.bss 68176 68184 8 0.0
.dram0.data 14428 14428 0 0.0
.flash.rodata 206640 206640 0 0.0
.flash.text 999528 999664 136 0.0
.iram0.text 62020 62020 0 0.0
m5stack (read only) 1053803 1053895 92 0.0
(read/write) 475688 475696 8 0.0
.dram0.bss 73696 73704 8 0.0
.dram0.data 34168 34168 0 0.0
.flash.rodata 235988 235988 0 0.0
.flash.text 1048419 1048511 92 0.0
.iram0.text 123107 123107 0 0.0
k32w light k32w061+release (read/write) 688824 688824 0 0.0
.bss 81112 81112 0 0.0
.data 2000 2000 0 0.0
.text 599912 599912 0 0.0
lock k32w061+release (read/write) 729684 729684 0 0.0
.bss 81520 81520 0 0.0
.data 1960 1960 0 0.0
.text 640404 640404 0 0.0
linux chip-tool-no-interactive-ipv6only arm64 (read only) 8222460 8222460 0 0.0
(read/write) 537745 537745 0 0.0
.bss 40897 40897 0 0.0
.data 1192 1192 0 0.0
.data.rel.ro 477752 477752 0 0.0
.dynamic 560 560 0 0.0
.got 14080 14080 0 0.0
.init 24 24 0 0.0
.init_array 184 184 0 0.0
.rodata 419452 419452 0 0.0
.text 6589060 6589060 0 0.0
thermostat-no-ble arm64 (read only) 2368540 2369116 576 0.0
(read/write) 174337 174353 16 0.0
.bss 86097 86113 16 0.0
.data 1488 1488 0 0.0
.data.rel.ro 78984 78984 0 0.0
.dynamic 560 560 0 0.0
.got 4744 4744 0 0.0
.init 24 24 0 0.0
.init_array 368 368 0 0.0
.rodata 145532 145660 128 0.1
.text 1993984 1994432 448 0.0
mbed lock-app CY8CPROTO_062_4343W+release (read only) 6224 6224 0 0.0
(read/write) 2411772 2411772 0 0.0
.bss 205660 205660 0 0.0
.data 5848 5848 0 0.0
.text 1374372 1374372 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 (read/write) 1179487 1179599 112 0.0
bss 141784 141792 8 0.0
rodata 150272 150272 0 0.0
text 808800 808904 104 0.0
lighting-app nrf52840dk_nrf52840 (read/write) 1156159 1156159 0 0.0
bss 145508 145508 0 0.0
rodata 121984 121984 0 0.0
text 810084 810084 0 0.0
nrf52840dk_nrf52840+rpc (read/write) 1120463 1120463 0 0.0
bss 145744 145744 0 0.0
rodata 113096 113096 0 0.0
text 782568 782568 0 0.0
nrf52840dongle_nrf52840 (read/write) 1064219 1064219 0 0.0
bss 152700 152700 0 0.0
rodata 92060 92060 0 0.0
text 738660 738660 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 1058614 1058614 0 0.0
bss 141712 141712 0 0.0
rodata 114740 114740 0 0.0
text 720192 720192 0 0.0
lock-app nrf52840dk_nrf52840 (read/write) 1093771 1093771 0 0.0
bss 135424 135424 0 0.0
rodata 133780 133780 0 0.0
text 746096 746096 0 0.0
nrf5340dk_nrf5340_cpuapp (read/write) 996554 996554 0 0.0
bss 131660 131660 0 0.0
rodata 126584 126584 0 0.0
text 656344 656344 0 0.0
pump-app nrf52840dk_nrf52840 (read/write) 1076567 1076567 0 0.0
bss 135512 135512 0 0.0
rodata 117496 117496 0 0.0
text 744964 744964 0 0.0
pump-controller-app nrf52840dk_nrf52840 (read/write) 1058103 1058103 0 0.0
bss 135232 135232 0 0.0
rodata 113448 113448 0 0.0
text 730848 730848 0 0.0
p6 all-clusters-app default (read/write) 2527216 2527344 128 0.0
.bss 139040 139048 8 0.0
.data 2784 2784 0 0.0
.text 1485480 1485608 128 0.0
light-app default (read/write) 2418960 2418960 0 0.0
.bss 132520 132520 0 0.0
.data 2584 2584 0 0.0
.text 1377224 1377224 0 0.0
lock-app default (read/write) 2423136 2423136 0 0.0
.bss 132320 132320 0 0.0
.data 2544 2544 0 0.0
.text 1381400 1381400 0 0.0
telink lighting-app tlsr9518adk80d (read/write) 808144 808256 112 0.0
bss 75216 75224 8 0.0
noinit 40416 40416 0 0.0
text 571886 571996 110 0.0

@Damian-Nordic Damian-Nordic merged commit 1d21551 into project-chip:master Apr 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants